Automated media storage libraries are known for providing cost effective access to large quantities of stored media. These media libraries are often interconnected with one or more host computers. Those one or more host computers write information to one or more information storage media disposed in the library, and/or read information from those one or more information storage media.
The various components of such media storage libraries often include what are sometimes referred to as “embedded” systems, applications, or devices. Such embedded systems comprise special purposes systems requiring high performance but having relatively few dedicated resources. For example, embedded devices typically comprise relatively little memory, a low performance processor, few if any standard utilities, and no hard disks.
In addition, embedded devices typically do not comprise a conventional operating system. A conventional operating system is written for flexibility. An embedded system, however, performs a single purpose. Therefore, such an embedded device operates using a device microcode written to optimize the device's single function.
A PCI card comprises such an embedded device. Such a PCI card typically includes a processor, a flash memory, and SDRAM. A FICON interface card comprises another such embedded device.
In order to monitor the performance of an embedded device, the device microcode includes instructions for logging data. In the event of a device error, that logged data can be analyzed to determine the cause of the error. Periodically during the operation of the embedded device, a trace statement is issued which causes, inter alia, the parameters the device is executing on at that point in time to be written to a memory device. This trace data is typically written to a revolving trace buffer.
If an error is detected, the trace buffer is downloaded, and the trace data is used to determine the source of the error. In order to adequately monitor the performance of such an embedded device, the device microcode must include many trace statements.
What is needed is a method to facilitate the creation of such trace statements, where the output of that trace statement is maximally descriptive. Applicants' method autogenerates a trace identifier, thereby, simplifying the formation of the corresponding trace statement.